package com.JFapp.service;

import com.JFapp.domain.dto.RoleMenuIdsDto;
import com.JFapp.domain.entity.ResponseResult;
import com.JFapp.domain.entity.Role;
import com.JFapp.domain.entity.User;
import com.baomidou.mybatisplus.extension.service.IService;
import org.springframework.web.multipart.MultipartFile;

import java.io.IOException;
import java.util.List;


/**
 * 计服角色表(Role)表服务接口
 *
 * @author makejava
 * @since 2023-12-06 20:50:51
 */
public interface RoleService extends IService<Role> {

    ResponseResult addRole(RoleMenuIdsDto roleMenuIdsDto);

    ResponseResult empower(List<User> users, Long Rid);

    ResponseResult changeStatus(Long roleId,String status);

    ResponseResult selectRole(Integer pageNum, Integer pageSize);

    List<String> selectRoleKeyListByUserId(Long id);

    ResponseResult empower(MultipartFile file) throws IOException;

    ResponseResult selectRoleById(Long roleId);

    ResponseResult changeRole(RoleMenuIdsDto role);

    List<Long> selectRoleIdByUserId(Long userId);

    ResponseResult selectAllRole();


    void updateRoleAndUser(Long id,List<Long> roleIds);
}
